07.02.2019 в 07:49
LegGnom
Простой способ отправки сообщений в Telegram канал
Сегодня мы рассмотрим практические примеры, как отправить сообщение в канал Telegram или конкретному пользователю.
Для того, чтобы сделать это, вам сначала необходимо:
- Создать общедоступный канал Telegram
- Создать Telegram BOT через BotFather
- Установите бота в качестве администратора на своем канале
Теперь вы можете отправить сообщение в ваш канал, выполнив HTTP GET запрос к Telegram BOT API по следующему URL:
https://api.telegram.org/bot[BOT_API_KEY]/sendMessage?chat_id=[MY_CHANNEL_NAME]&text=[MY_MESSAGE_TEXT]
Где:
- BOT_API_KEY - это ключ API, сгенерированный BotFather при создании вашего бота
- MY_CHANNEL_NAME - название или ID вашего канала (например, @my_channel_name)
- MY_MESSAGE_TEXT - сообщение, которое вы хотите отправить (в кодировке URL)
PHP
$apiToken = "my_bot_api_token";$data = [ 'chat_id' => '@my_channel_name', 'text' => 'Hello world!' ];$response = file_get_contents("https://api.telegram.org/bot$apiToken/sendMessage?" . http_build_query($data) );
JAVA
String urlString = "https://api.telegram.org/bot%s/sendMessage?chat_id=%s&text=%s";String apiToken = "my_bot_api_token"; String chatId = "@my_channel_name"; String text = "Hello world!";urlString = String.format(urlString, apiToken, chatId, text);URL url = new URL(urlString); URLConnection conn = url.openConnection();StringBuilder sb = new StringBuilder(); InputStream is = new BufferedInputStream(conn.getInputStream()); BufferedReader br = new BufferedReader(new InputStreamReader(is)); String inputLine = ""; while ((inputLine = br.readLine()) != null) { sb.append(inputLine); } String response = sb.toString();
Python
import requests api_token = 'MY_TOKEN' requests.get('https://api.telegram.org/bot{}/sendMessage'.format(api_token), params=dict( chat_id='@my_channel_name', text='Hello world! ))
Я надеюсь, что эти тривиальные примеры могут быть полезны и помогут любому из вас начать изучать мир Telegram Bot API.